L’éléphant invisible

Comment se protéger des prises d’empreintes numériques ?

jeudi 28 janvier 2021, par Gregory Fabre

Ceci est le résumé d’une conférence donnée le 28 décembre 2020 au RC3, le congrès annuel du Chaos Computer Club, qui cette année avait lieu en ligne uniquement.

L’auteur de cette conférence est Julian Fietkau.

J’ai réalisé un résumé en vidéo en français de cette conférence pour l’OSSIR que j’ai présenté par visio conférence à une cinquantaine de membres le 12 janvier 2021. Il existe une vidéo enregistrée de cette présentation, cet article en est le résumé écrit.

Cette conférence présente une approche quantitative pour se défendre des prises d’empreintes numériques sur le web, et en particulier l’extension FPMON pour le navigateur Chrome.

Traçage

Par-delà les cookies, de nouvelles techniques de traçage des internautes sont actuellement utilisées. Au lieu d’envoyer un identificateur, le site exécute des scripts qui permettent de réaliser une prise d’empreinte unique de l’utilisateur.

Comment prend-on des empreintes numériques ?

Un script JavaScript fait un calcul particulier, par exemple il applique une texture sur un objet WebGL. En complément des données standard sont récupérées (User agent, Timezone, Plugins…), puis est calculée une empreinte en combinant tout cela.

Pour transmettre l’empreinte, un fournisseur externe d’identification est appelé par l’internaute en plus du fournisseur de contenu. Il effectue les calculs et renvoie l’identifiant unique de la personne au fournisseur de contenu, qui le rémunère pour cela.

img

Classification des bibliothèques

Les chercheurs ont analysé des outils de prise empreinte afin de trouver les librairies JS les plus utilisées par les outils commerciaux ainsi que par les outils open source. Puis ils ont classé les 115 bibliothèques trouvées, et ainsi déterminé 40 grands types de mesures, actives ou passives.

Puis ils ont développé une extension Chrome permettant, pour un site web, de calculer un score indiquant combien de techniques sont utilisées. L’extension modifie à la volée les scripts utilisés pour enregistrer tous les appels de fonction.

Par exemple, sur le site du New York Times, on voit sur cet écran : toutes les bibliothèques suivies, les données statiques d’empreinte, les bibliothèques passives et actives, ainsi que les trois les plus efficaces.

img

Voici des chiffres de quelques sites importants. On voit bien l’étendue du problème… ces scripts sont très utilisés par le marché.

img

Les sites les plus agressifs, avec 95% des fonctions utilisées sont : - breitbart.com - foursquare.com - politifact.com

La majorité utilise de 7 à 15 fonctions.

Prestataires impliqués

Qui gagne de l’argent avec ces technologies ? Qui sont ces prestataires d‘empreinte ? Quels sont leurs réseaux :-D ?

La majorité des tentatives les plus agressives sont engendrées par moins d’1% des bibliothèques. Par ailleurs sur les 10 000 sites les plus populaires du web on compte plus de 100 réseaux de prise d’empreinte.

Voici une classification des réseaux les plus actifs : on s’aperçoit que leurs noms ne sont pas très connus, alors qu’ils ont une influence très importante sur nos vies.

img

Outils évitant le suivi

Les chercheurs ont réalisé une évaluation des outils permettant de se protéger de ce suivi. Il s’avère que le meilleur dans ce contexte est le navigateur Safari d’Apple.

La meilleure des solutions « manuelles » reste de réduire l’exécution de JavaScript [1].

Si vous souhaitez plus d’éléments techniques tout est publié sur https://fpmon.github.io.


[1] L’auteur de cet article utilise pour cela l’excellente extension NoScript.